This vignette will show you how to convert networks between graphNEL and Cytoscape.

Installation

if(!"RCy3" %in% installed.packages()){
    install.packages("BiocManager")
    BiocManager::install("RCy3")
}
library(RCy3)

Required Software

The whole point of RCy3 is to connect with Cytoscape. You will need to install and launch Cytoscape:

cytoscapePing()

From graphNEL to Cytoscape

The graph package is a popular network tool among R users. With RCy3, you can easily translate graphNEL networks to Cytoscape networks!

Create a simple GraphNEL object

g <- makeSimpleGraph()

Now pass it along to Cytoscape:

createNetworkFromGraph(g,"myGraph")

From Cytoscape to GraphNEL

Inversely, you can use createGraphFromNetwork() in RCy3 to retreive vertex (node) and edge data.frames to construct a GraphNEL object.

g2 <- createGraphFromNetwork("myGraph")

Compare the round-trip result for yourself…

g
g2
LS0tCnRpdGxlOiAiQ3l0b3NjYXBlIGFuZCBncmFwaE5FTCIKYXV0aG9yOiAiYnkgQWxleGFuZGVyIFBpY28iCnBhY2thZ2U6IFJDeTMKZGF0ZTogImByIFN5cy5EYXRlKClgIgpvdXRwdXQ6IAogIEJpb2NTdHlsZTo6aHRtbF9kb2N1bWVudDoKICAgIHRvY19mbG9hdDogdHJ1ZQojICBwZGZfZG9jdW1lbnQ6CiMgICAgdG9jOiB0cnVlICAgCnZpZ25ldHRlOiA+CiAgJVxWaWduZXR0ZUluZGV4RW50cnl7MDMuIEN5dG9zY2FwZSBhbmQgZ3JhcGhORUwgfjUgbWlufQogICVcVmlnbmV0dGVFbmdpbmV7a25pdHI6OnJtYXJrZG93bn0KICAlXFZpZ25ldHRlRW5jb2Rpbmd7VVRGLTh9Ci0tLQpgYGB7ciwgZWNobyA9IEZBTFNFfQprbml0cjo6b3B0c19jaHVuayRzZXQoCiAgZXZhbD1GQUxTRQopCmBgYAoKVGhpcyB2aWduZXR0ZSB3aWxsIHNob3cgeW91IGhvdyB0byBjb252ZXJ0IG5ldHdvcmtzIGJldHdlZW4gZ3JhcGhORUwgYW5kIEN5dG9zY2FwZS4KCiMgSW5zdGFsbGF0aW9uCmBgYHtyfQppZighIlJDeTMiICVpbiUgaW5zdGFsbGVkLnBhY2thZ2VzKCkpewogICAgaW5zdGFsbC5wYWNrYWdlcygiQmlvY01hbmFnZXIiKQogICAgQmlvY01hbmFnZXI6Omluc3RhbGwoIlJDeTMiKQp9CmxpYnJhcnkoUkN5MykKYGBgCgojIFJlcXVpcmVkIFNvZnR3YXJlClRoZSB3aG9sZSBwb2ludCBvZiBSQ3kzIGlzIHRvIGNvbm5lY3Qgd2l0aCBDeXRvc2NhcGUuIFlvdSB3aWxsIG5lZWQgdG8gaW5zdGFsbCBhbmQgbGF1bmNoIEN5dG9zY2FwZTogCgoqIERvd25sb2FkIHRoZSBsYXRlc3QgQ3l0b3NjYXBlIGZyb20gaHR0cDovL3d3dy5jeXRvc2NhcGUub3JnL2Rvd25sb2FkLnBocAoqIENvbXBsZXRlIGluc3RhbGxhdGlvbiB3aXphcmQKKiBMYXVuY2ggQ3l0b3NjYXBlIAoKYGBge3J9CmN5dG9zY2FwZVBpbmcoKQpgYGAKCiMgRnJvbSBncmFwaE5FTCB0byBDeXRvc2NhcGUKVGhlIGdyYXBoIHBhY2thZ2UgaXMgYSBwb3B1bGFyIG5ldHdvcmsgdG9vbCBhbW9uZyBSIHVzZXJzLiBXaXRoIFJDeTMsIHlvdSBjYW4gZWFzaWx5IHRyYW5zbGF0ZSBncmFwaE5FTCBuZXR3b3JrcyB0byBDeXRvc2NhcGUgbmV0d29ya3MhCgpDcmVhdGUgYSBzaW1wbGUgR3JhcGhORUwgb2JqZWN0CmBgYHtyfQpnIDwtIG1ha2VTaW1wbGVHcmFwaCgpCmBgYAoKTm93IHBhc3MgaXQgYWxvbmcgdG8gQ3l0b3NjYXBlOgoKYGBge3J9CmNyZWF0ZU5ldHdvcmtGcm9tR3JhcGgoZywibXlHcmFwaCIpCmBgYAojIEZyb20gQ3l0b3NjYXBlIHRvIEdyYXBoTkVMIApJbnZlcnNlbHksIHlvdSBjYW4gdXNlIGNyZWF0ZUdyYXBoRnJvbU5ldHdvcmsoKSBpbiBSQ3kzIHRvIHJldHJlaXZlIHZlcnRleCAobm9kZSkgYW5kIGVkZ2UgZGF0YS5mcmFtZXMgdG8gY29uc3RydWN0IGEgR3JhcGhORUwgb2JqZWN0LiAKCmBgYHtyfQpnMiA8LSBjcmVhdGVHcmFwaEZyb21OZXR3b3JrKCJteUdyYXBoIikKYGBgCgpDb21wYXJlIHRoZSByb3VuZC10cmlwIHJlc3VsdCBmb3IgeW91cnNlbGYuLi4KYGBge3J9CmcKZzIKYGBgCg==